package com.crm.model.qo.orderManager;

import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * @ Author ：pym
 * @ Date   ：2021/3/12 10:49
 */
@Data
public class CustomerProductOrderQO {
    /**
     * 日期类型(全部/本周/本月/本年度)
     */
    private String dateType;

    /**
     * 订单编号
     */
    private String orderNumber;

    /**
     * 订单状态
     */
    private String orderStatus;

    /**
     * 订单类型
     */
    private String orderType;

    /**
     * 支付方式
     */
    private String orderPaymentWay;

    /**
     * 订单优惠总金额
     */
    private BigDecimal orderDiscountTotalAmountStart;
    private BigDecimal orderDiscountTotalAmountEnd;

    /**
     * 订单实际总金额
     */
    private BigDecimal orderActualTotalAmountStart;
    private BigDecimal orderActualTotalAmountEnd;

    /**
     * 订单总金额
     */
    private BigDecimal orderTotalAmountStart;
    private BigDecimal orderTotalAmountEnd;

    /**
     * 客户联系方式
     */
    private String bindMobilePhoneNumber;

    /**
     * 是否合作开发
     */
    private String whetherCoDevelopment;

    /**
     * 是否全部到款
     */
    private String whetherAllPayment;

    /**
     * 回款状态
     */
    private String paidBackStatus;

    /**
     * 是否挂起
     */
    private String whetherSuspend;

    /**
     * 合同编号
     */
    private String contractNumber;

    /**
     * 订单完成时间
     */
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date orderCompleteTmStart;
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date orderCompleteTmEnd;

    /**
     * 所属分公司
     */
    private String companyName;

    /**
     * 客户名称
     */
    private String customerName;

    /**
     * 客户id
     */
    private String customerId;

    /**
     * 创建人
     */
    private String userName;

    /**
     * 创建时间
     */
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date createTmStart;
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date createTmEnd;

    /**
     * tab页 0-全部订单 1-会员产品订单 2-非会员产品订单
     */
    private String tabType;

    /**
     * 客户联系人
     */
    private String contactPerson;

    /**
     * 合同类型
     */
    private String contractType;

    /**
     * 回款状态可多选
     */
    private List<String> paidBackStatusMultiple;

    /**
     * 产品
     */
    private String productLists;

    /**
     * 产品
     */
    private List<String> productList;

}
